package com.jz.netthings.application.providerCost.bean;

import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.RestController;

import java.io.Serializable;

/**
 * <p>
 * 
 * </p>
 *
 * @author zyl
 * @since 2019-03-18
 */
public class ProviderCost implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 发放序号
     */
    @TableField("costIdx")
    private String costIdx;
    /**
     * 登记号
     */
    @TableField("registerNo")
    private String registerNo;
    /**
     * 浆员
     */
    @TableField("providerNo")
    private String providerNo;

    @TableField(exist = false)
    private String providerNoName;
    /**
     * 建档照片
     */
    @TableField(exist = false)
    private String providerNoPhoto;
    /**
     * 卡号
     */
    @TableField(exist = false)
    private String cardId;
    /**
     * 身份证
     */
    @TableField(exist = false)
    private String idNo;
    /**
     * 年龄
     */
    @TableField(exist = false)
    private String age;
    /**
     * 电话
     */
    @TableField(exist = false)
    private String phone;
    /**
     * 地址
     */
    @TableField(exist = false)
    private String address;
    /**
     * 性别
     */
    @TableField(exist = false)
    private String sex;


    /**
     * 采浆日期
     */
    @TableField("collectionDate")
    private Date collectionDate;
    /**
     * 费用发放日期
     */
    @TableField("putOutDate")
    private Date putOutDate;
    /**
     * 发放开始时间
     */
    @TableField("putOutStartTime")
    private Date putOutStartTime;
    /**
     * 发放结束时间
     */
    @TableField("putOutEndTime")
    private Date putOutEndTime;
    /**
     * 费用照片
     */
    private String photo;
    /**
     * 阈值
     */
    private Float threshold;
    /**
     * 总金额
     */
    @TableField("putOutMoney")
    private Float putOutMoney;
    /**
     * 基础金额
     */
    @TableField("baseMoney")
    private Float baseMoney;
    @TableField(exist = false)
    private String baseMoneyName;
    /**
     * 交通费
     */
    @TableField("trafficFee")
    private Float trafficFee;
    /**
     * 采浆次数
     */
    @TableField("collectionTimes")
    private Integer collectionTimes;
    /**
     * 频次补贴
     */
    @TableField("timesAllowance")
    private Float timesAllowance;
    /**
     * 上传收据时间
     */
    @TableField("uploadReceiptTime")
    private Date uploadReceiptTime;
    /**
     * 上传收据
     */
    @TableField("uploadReceipt")
    private String uploadReceipt;
    /**
     * 上传人
     */
    private String uploader;
    @TableField(exist = false)
    private String uploaderName;
    /**
     * 记录创建时间
     */
    @TableField("createTime")
    private Date createTime;
    /**
     * 记录结束时间
     */
    @TableField("endTime")
    private Date endTime;
    /**
     * 发放地址
     */
    @TableField("issuePlace")
    private String issuePlace;
    @TableField(exist = false)
    private String issuePlaceName;
    /**
     * 发放状态
     */
    private String state;
    @TableField(exist = false)
    private String stateName;
    /**
     * 采浆编号
     */
    @TableField("collectionId")
    private String collectionId;
    /**
     * 认证方式
     */
    private String rzfs;
    @TableField(exist = false)
    private String rzfsName;
    /**
     * 发放人
     */
    @TableField("putWorker")
    private String putWorker;
    @TableField(exist = false)
    private String putWorkerName;

    /**
     * 发放方式
     * @return
     */
    @TableField("issueType")
     private  String issueType;
    @TableField(exist = false)
     private  String issueTypeName;
    @TableField("modifyTime")
      private  Date modifyTime;
    @TableField("synDate")
     private  Date synDate;

    public Date getModifyTime() {
        return modifyTime;
    }

    public void setModifyTime(Date modifyTime) {
        this.modifyTime = modifyTime;
    }

    public Date getSynDate() {
        return synDate;
    }

    public void setSynDate(Date synDate) {
        this.synDate = synDate;
    }

    public String getIssueTypeName() {
        return issueTypeName;
    }

    public void setIssueTypeName(String issueTypeName) {
        this.issueTypeName = issueTypeName;
    }

    public String getIssueType() {
        return issueType;
    }

    public void setIssueType(String issueType) {
        this.issueType = issueType;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getCostIdx() {
        return costIdx;
    }

    public void setCostIdx(String costIdx) {
        this.costIdx = costIdx;
    }

    public String getRegisterNo() {
        return registerNo;
    }

    public void setRegisterNo(String registerNo) {
        this.registerNo = registerNo;
    }

    public String getProviderNo() {
        return providerNo;
    }

    public void setProviderNo(String providerNo) {
        this.providerNo = providerNo;
    }
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    public Date getCollectionDate() {
        return collectionDate;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd")
    public void setCollectionDate(Date collectionDate) {
        this.collectionDate = collectionDate;
    }
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    public Date getPutOutDate() {
        return putOutDate;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd")
    public void setPutOutDate(Date putOutDate) {
        this.putOutDate = putOutDate;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getPutOutStartTime() {
        return putOutStartTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setPutOutStartTime(Date putOutStartTime) {
        this.putOutStartTime = putOutStartTime;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getPutOutEndTime() {
        return putOutEndTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setPutOutEndTime(Date putOutEndTime) {
        this.putOutEndTime = putOutEndTime;
    }

    public String getPhoto() {
        return photo;
    }

    public void setPhoto(String photo) {
        this.photo = photo;
    }

    public Float getThreshold() {
        return threshold;
    }

    public void setThreshold(Float threshold) {
        this.threshold = threshold;
    }

    public Float getPutOutMoney() {
        return putOutMoney;
    }

    public void setPutOutMoney(Float putOutMoney) {
        this.putOutMoney = putOutMoney;
    }

    public Float getBaseMoney() {
        return baseMoney;
    }

    public void setBaseMoney(Float baseMoney) {
        this.baseMoney = baseMoney;
    }

    public Float getTrafficFee() {
        return trafficFee;
    }

    public void setTrafficFee(Float trafficFee) {
        this.trafficFee = trafficFee;
    }

    public Integer getCollectionTimes() {
        return collectionTimes;
    }

    public void setCollectionTimes(Integer collectionTimes) {
        this.collectionTimes = collectionTimes;
    }

    public Float getTimesAllowance() {
        return timesAllowance;
    }

    public void setTimesAllowance(Float timesAllowance) {
        this.timesAllowance = timesAllowance;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getUploadReceiptTime() {
        return uploadReceiptTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setUploadReceiptTime(Date uploadReceiptTime) {
        this.uploadReceiptTime = uploadReceiptTime;
    }

    public String getUploadReceipt() {
        return uploadReceipt;
    }

    public void setUploadReceipt(String uploadReceipt) {
        this.uploadReceipt = uploadReceipt;
    }

    public String getUploader() {
        return uploader;
    }

    public void setUploader(String uploader) {
        this.uploader = uploader;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getCreateTime() {
        return createTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getEndTime() {
        return endTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public String getIssuePlace() {
        return issuePlace;
    }

    public void setIssuePlace(String issuePlace) {
        this.issuePlace = issuePlace;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public String getCollectionId() {
        return collectionId;
    }

    public void setCollectionId(String collectionId) {
        this.collectionId = collectionId;
    }

    public String getRzfs() {
        return rzfs;
    }

    public void setRzfs(String rzfs) {
        this.rzfs = rzfs;
    }

    public String getPutWorker() {
        return putWorker;
    }

    public void setPutWorker(String putWorker) {
        this.putWorker = putWorker;
    }


    public String getProviderNoName() {
        return providerNoName;
    }

    public void setProviderNoName(String providerNoName) {
        this.providerNoName = providerNoName;
    }

    public String getBaseMoneyName() {
        return baseMoneyName;
    }

    public void setBaseMoneyName(String baseMoneyName) {
        this.baseMoneyName = baseMoneyName;
    }

    public String getUploaderName() {
        return uploaderName;
    }

    public void setUploaderName(String uploaderName) {
        this.uploaderName = uploaderName;
    }

    public String getIssuePlaceName() {
        return issuePlaceName;
    }

    public void setIssuePlaceName(String issuePlaceName) {
        this.issuePlaceName = issuePlaceName;
    }

    public String getStateName() {
        return stateName;
    }

    public void setStateName(String stateName) {
        this.stateName = stateName;
    }

    public String getRzfsName() {
        return rzfsName;
    }

    public void setRzfsName(String rzfsName) {
        this.rzfsName = rzfsName;
    }

    public String getPutWorkerName() {
        return putWorkerName;
    }

    public void setPutWorkerName(String putWorkerName) {
        this.putWorkerName = putWorkerName;
    }

    public String getProviderNoPhoto() {
        return providerNoPhoto;
    }

    public void setProviderNoPhoto(String providerNoPhoto) {
        this.providerNoPhoto = providerNoPhoto;
    }

    public String getCardId() {
        return cardId;
    }

    public void setCardId(String cardId) {
        this.cardId = cardId;
    }

    public String getIdNo() {
        return idNo;
    }

    public void setIdNo(String idNo) {
        this.idNo = idNo;
    }

    public String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    @Override
    public String toString() {
        return "ProviderCost{" +
                "id=" + id +
                ", costIdx='" + costIdx + '\'' +
                ", registerNo='" + registerNo + '\'' +
                ", providerNo='" + providerNo + '\'' +
                ", providerNoName='" + providerNoName + '\'' +
                ", collectionDate=" + collectionDate +
                ", putOutDate=" + putOutDate +
                ", putOutStartTime=" + putOutStartTime +
                ", putOutEndTime=" + putOutEndTime +
                ", photo='" + photo + '\'' +
                ", threshold=" + threshold +
                ", putOutMoney=" + putOutMoney +
                ", baseMoney=" + baseMoney +
                ", baseMoneyName='" + baseMoneyName + '\'' +
                ", trafficFee=" + trafficFee +
                ", collectionTimes=" + collectionTimes +
                ", timesAllowance=" + timesAllowance +
                ", uploadReceiptTime=" + uploadReceiptTime +
                ", uploadReceipt='" + uploadReceipt + '\'' +
                ", uploader='" + uploader + '\'' +
                ", uploaderName='" + uploaderName + '\'' +
                ", createTime=" + createTime +
                ", endTime=" + endTime +
                ", issuePlace='" + issuePlace + '\'' +
                ", issuePlaceName='" + issuePlaceName + '\'' +
                ", state='" + state + '\'' +
                ", stateName='" + stateName + '\'' +
                ", collectionId='" + collectionId + '\'' +
                ", rzfs='" + rzfs + '\'' +
                ", rzfsName='" + rzfsName + '\'' +
                ", putWorker='" + putWorker + '\'' +
                ", putWorkerName='" + putWorkerName + '\'' +
                '}';
    }
}
